/**
 */
package usixmlcui.util;

import java.util.List;

import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EObject;

import usixmlcui.*;

/**
 * <!-- begin-user-doc -->
 * The <b>Switch</b> for the model's inheritance hierarchy.
 * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
 * to invoke the <code>caseXXX</code> method for each class of the model,
 * starting with the actual class of the object
 * and proceeding up the inheritance hierarchy
 * until a non-null result is returned,
 * which is the result of the switch.
 * <!-- end-user-doc -->
 * @see usixmlcui.Usixml_cuiPackage
 * @generated
 */
public class Usixml_cuiSwitch {
	/**
	 * The cached model package
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	protected static Usixml_cuiPackage modelPackage;

	/**
	 * Creates an instance of the switch.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public Usixml_cuiSwitch() {
		if (modelPackage == null) {
			modelPackage = Usixml_cuiPackage.eINSTANCE;
		}
	}

	/**
	 * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the first non-null result returned by a <code>caseXXX</code> call.
	 * @generated
	 */
	public Object doSwitch(EObject theEObject) {
		return doSwitch(theEObject.eClass(), theEObject);
	}

	/**
	 * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the first non-null result returned by a <code>caseXXX</code> call.
	 * @generated
	 */
	protected Object doSwitch(EClass theEClass, EObject theEObject) {
		if (theEClass.eContainer() == modelPackage) {
			return doSwitch(theEClass.getClassifierID(), theEObject);
		}
		else {
			List eSuperTypes = theEClass.getESuperTypes();
			return
				eSuperTypes.isEmpty() ?
					defaultCase(theEObject) :
					doSwitch((EClass)eSuperTypes.get(0), theEObject);
		}
	}

	/**
	 * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the first non-null result returned by a <code>caseXXX</code> call.
	 * @generated
	 */
	protected Object doSwitch(int classifierID, EObject theEObject) {
		switch (classifierID) {
			case Usixml_cuiPackage.FONT: {
				Font font = (Font)theEObject;
				Object result = caseFont(font);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case Usixml_cuiPackage.COLOR: {
				Color color = (Color)theEObject;
				Object result = caseColor(color);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case Usixml_cuiPackage.CONCRETE_GRAPHICAL_STYLE: {
				ConcreteGraphicalStyle concreteGraphicalStyle = (ConcreteGraphicalStyle)theEObject;
				Object result = caseConcreteGraphicalStyle(concreteGraphicalStyle);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case Usixml_cuiPackage.CONCRETE_STYLE: {
				ConcreteStyle concreteStyle = (ConcreteStyle)theEObject;
				Object result = caseConcreteStyle(concreteStyle);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case Usixml_cuiPackage.CONCRETE_VOCAL_STYLE: {
				ConcreteVocalStyle concreteVocalStyle = (ConcreteVocalStyle)theEObject;
				Object result = caseConcreteVocalStyle(concreteVocalStyle);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case Usixml_cuiPackage.CONCRETE_UI_MODEL: {
				ConcreteUIModel concreteUIModel = (ConcreteUIModel)theEObject;
				Object result = caseConcreteUIModel(concreteUIModel);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case Usixml_cuiPackage.CONCRETE_INTERACTION_UNIT: {
				ConcreteInteractionUnit concreteInteractionUnit = (ConcreteInteractionUnit)theEObject;
				Object result = caseConcreteInteractionUnit(concreteInteractionUnit);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case Usixml_cuiPackage.CONCRETE_MULTIMODAL_IU: {
				ConcreteMultimodalIU concreteMultimodalIU = (ConcreteMultimodalIU)theEObject;
				Object result = caseConcreteMultimodalIU(concreteMultimodalIU);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case Usixml_cuiPackage.CONCRETE_GRAPHICAL_IU: {
				ConcreteGraphicalIU concreteGraphicalIU = (ConcreteGraphicalIU)theEObject;
				Object result = caseConcreteGraphicalIU(concreteGraphicalIU);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case Usixml_cuiPackage.CONCRETE_VOCAL_IU: {
				ConcreteVocalIU concreteVocalIU = (ConcreteVocalIU)theEObject;
				Object result = caseConcreteVocalIU(concreteVocalIU);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case Usixml_cuiPackage.CONCRETE_TACTILE_IU: {
				ConcreteTactileIU concreteTactileIU = (ConcreteTactileIU)theEObject;
				Object result = caseConcreteTactileIU(concreteTactileIU);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case Usixml_cuiPackage.CONCRETE_GRAPHICAL_RELATIONSHIP: {
				ConcreteGraphicalRelationship concreteGraphicalRelationship = (ConcreteGraphicalRelationship)theEObject;
				Object result = caseConcreteGraphicalRelationship(concreteGraphicalRelationship);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case Usixml_cuiPackage.FLOW_LAYOUT: {
				FlowLayout flowLayout = (FlowLayout)theEObject;
				Object result = caseFlowLayout(flowLayout);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case Usixml_cuiPackage.GRID_LAYOUT: {
				GridLayout gridLayout = (GridLayout)theEObject;
				Object result = caseGridLayout(gridLayout);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case Usixml_cuiPackage.BORDER_LAYOUT: {
				BorderLayout borderLayout = (BorderLayout)theEObject;
				Object result = caseBorderLayout(borderLayout);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case Usixml_cuiPackage.BOX_LAYOUT: {
				BoxLayout boxLayout = (BoxLayout)theEObject;
				Object result = caseBoxLayout(boxLayout);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case Usixml_cuiPackage.CONCRETE_GRAPHICAL_COMPOUND_IU: {
				ConcreteGraphicalCompoundIU concreteGraphicalCompoundIU = (ConcreteGraphicalCompoundIU)theEObject;
				Object result = caseConcreteGraphicalCompoundIU(concreteGraphicalCompoundIU);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case Usixml_cuiPackage.CONCRETE_GRAPHICAL_ELEMENTARY_IU: {
				ConcreteGraphicalElementaryIU concreteGraphicalElementaryIU = (ConcreteGraphicalElementaryIU)theEObject;
				Object result = caseConcreteGraphicalElementaryIU(concreteGraphicalElementaryIU);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case Usixml_cuiPackage.IMAGE_COMPONENT: {
				ImageComponent imageComponent = (ImageComponent)theEObject;
				Object result = caseImageComponent(imageComponent);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case Usixml_cuiPackage.VIDEO_COMPONENT: {
				VideoComponent videoComponent = (VideoComponent)theEObject;
				Object result = caseVideoComponent(videoComponent);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case Usixml_cuiPackage.AUDIO_COMPONENT: {
				AudioComponent audioComponent = (AudioComponent)theEObject;
				Object result = caseAudioComponent(audioComponent);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case Usixml_cuiPackage.SLIDER: {
				Slider slider = (Slider)theEObject;
				Object result = caseSlider(slider);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case Usixml_cuiPackage.FILE_PICKER: {
				FilePicker filePicker = (FilePicker)theEObject;
				Object result = caseFilePicker(filePicker);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case Usixml_cuiPackage.PROGRESSION_BAR: {
				ProgressionBar progressionBar = (ProgressionBar)theEObject;
				Object result = caseProgressionBar(progressionBar);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case Usixml_cuiPackage.TAB_BAR: {
				TabBar tabBar = (TabBar)theEObject;
				Object result = caseTabBar(tabBar);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case Usixml_cuiPackage.TAB: {
				Tab tab = (Tab)theEObject;
				Object result = caseTab(tab);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case Usixml_cuiPackage.MENU_BAR: {
				MenuBar menuBar = (MenuBar)theEObject;
				Object result = caseMenuBar(menuBar);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case Usixml_cuiPackage.MENU_BAR_ITEM: {
				MenuBarItem menuBarItem = (MenuBarItem)theEObject;
				Object result = caseMenuBarItem(menuBarItem);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case Usixml_cuiPackage.MENU: {
				Menu menu = (Menu)theEObject;
				Object result = caseMenu(menu);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case Usixml_cuiPackage.MENU_ITEM: {
				MenuItem menuItem = (MenuItem)theEObject;
				Object result = caseMenuItem(menuItem);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case Usixml_cuiPackage.MENU_SEPARATOR: {
				MenuSeparator menuSeparator = (MenuSeparator)theEObject;
				Object result = caseMenuSeparator(menuSeparator);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case Usixml_cuiPackage.COMBO_BOX: {
				ComboBox comboBox = (ComboBox)theEObject;
				Object result = caseComboBox(comboBox);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case Usixml_cuiPackage.COMBO_ITEM: {
				ComboItem comboItem = (ComboItem)theEObject;
				Object result = caseComboItem(comboItem);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case Usixml_cuiPackage.CHECK_BOX: {
				CheckBox checkBox = (CheckBox)theEObject;
				Object result = caseCheckBox(checkBox);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case Usixml_cuiPackage.CHECK_BOX_ITEM: {
				CheckBoxItem checkBoxItem = (CheckBoxItem)theEObject;
				Object result = caseCheckBoxItem(checkBoxItem);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case Usixml_cuiPackage.COMMAND_BUTTON: {
				CommandButton commandButton = (CommandButton)theEObject;
				Object result = caseCommandButton(commandButton);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case Usixml_cuiPackage.RADIO_BOX: {
				RadioBox radioBox = (RadioBox)theEObject;
				Object result = caseRadioBox(radioBox);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case Usixml_cuiPackage.RADIO_ITEM: {
				RadioItem radioItem = (RadioItem)theEObject;
				Object result = caseRadioItem(radioItem);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case Usixml_cuiPackage.LABEL: {
				Label label = (Label)theEObject;
				Object result = caseLabel(label);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case Usixml_cuiPackage.LIST_BOX: {
				ListBox listBox = (ListBox)theEObject;
				Object result = caseListBox(listBox);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case Usixml_cuiPackage.LIST_ITEM: {
				ListItem listItem = (ListItem)theEObject;
				Object result = caseListItem(listItem);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case Usixml_cuiPackage.TOOL_BAR: {
				ToolBar toolBar = (ToolBar)theEObject;
				Object result = caseToolBar(toolBar);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case Usixml_cuiPackage.TOOL_BAR_ITEM: {
				ToolBarItem toolBarItem = (ToolBarItem)theEObject;
				Object result = caseToolBarItem(toolBarItem);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case Usixml_cuiPackage.TOOL_BAR_SEPARATOR: {
				ToolBarSeparator toolBarSeparator = (ToolBarSeparator)theEObject;
				Object result = caseToolBarSeparator(toolBarSeparator);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case Usixml_cuiPackage.TOOL_BAR_BUTTON: {
				ToolBarButton toolBarButton = (ToolBarButton)theEObject;
				Object result = caseToolBarButton(toolBarButton);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			default: return defaultCase(theEObject);
		}
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Font</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>Font</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public Object caseFont(Font object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Color</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>Color</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public Object caseColor(Color object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Concrete Graphical Style</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>Concrete Graphical Style</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public Object caseConcreteGraphicalStyle(ConcreteGraphicalStyle object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Concrete Style</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>Concrete Style</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public Object caseConcreteStyle(ConcreteStyle object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Concrete Vocal Style</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>Concrete Vocal Style</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public Object caseConcreteVocalStyle(ConcreteVocalStyle object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Concrete UI Model</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>Concrete UI Model</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public Object caseConcreteUIModel(ConcreteUIModel object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Concrete Interaction Unit</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>Concrete Interaction Unit</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public Object caseConcreteInteractionUnit(ConcreteInteractionUnit object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Concrete Multimodal IU</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>Concrete Multimodal IU</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public Object caseConcreteMultimodalIU(ConcreteMultimodalIU object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Concrete Graphical IU</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>Concrete Graphical IU</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public Object caseConcreteGraphicalIU(ConcreteGraphicalIU object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Concrete Vocal IU</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>Concrete Vocal IU</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public Object caseConcreteVocalIU(ConcreteVocalIU object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Concrete Tactile IU</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>Concrete Tactile IU</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public Object caseConcreteTactileIU(ConcreteTactileIU object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Concrete Graphical Relationship</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>Concrete Graphical Relationship</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public Object caseConcreteGraphicalRelationship(ConcreteGraphicalRelationship object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Flow Layout</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>Flow Layout</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public Object caseFlowLayout(FlowLayout object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Grid Layout</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>Grid Layout</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public Object caseGridLayout(GridLayout object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Border Layout</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>Border Layout</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public Object caseBorderLayout(BorderLayout object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Box Layout</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>Box Layout</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public Object caseBoxLayout(BoxLayout object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Concrete Graphical Compound IU</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>Concrete Graphical Compound IU</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public Object caseConcreteGraphicalCompoundIU(ConcreteGraphicalCompoundIU object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Concrete Graphical Elementary IU</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>Concrete Graphical Elementary IU</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public Object caseConcreteGraphicalElementaryIU(ConcreteGraphicalElementaryIU object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Image Component</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>Image Component</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public Object caseImageComponent(ImageComponent object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Video Component</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>Video Component</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public Object caseVideoComponent(VideoComponent object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Audio Component</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>Audio Component</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public Object caseAudioComponent(AudioComponent object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Slider</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>Slider</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public Object caseSlider(Slider object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>File Picker</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>File Picker</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public Object caseFilePicker(FilePicker object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Progression Bar</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>Progression Bar</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public Object caseProgressionBar(ProgressionBar object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Tab Bar</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>Tab Bar</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public Object caseTabBar(TabBar object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Tab</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>Tab</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public Object caseTab(Tab object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Menu Bar</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>Menu Bar</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public Object caseMenuBar(MenuBar object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Menu Bar Item</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>Menu Bar Item</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public Object caseMenuBarItem(MenuBarItem object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Menu</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>Menu</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public Object caseMenu(Menu object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Menu Item</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>Menu Item</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public Object caseMenuItem(MenuItem object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Menu Separator</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>Menu Separator</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public Object caseMenuSeparator(MenuSeparator object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Combo Box</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>Combo Box</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public Object caseComboBox(ComboBox object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Combo Item</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>Combo Item</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public Object caseComboItem(ComboItem object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Check Box</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>Check Box</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public Object caseCheckBox(CheckBox object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Check Box Item</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>Check Box Item</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public Object caseCheckBoxItem(CheckBoxItem object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Command Button</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>Command Button</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public Object caseCommandButton(CommandButton object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Radio Box</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>Radio Box</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public Object caseRadioBox(RadioBox object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Radio Item</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>Radio Item</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public Object caseRadioItem(RadioItem object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Label</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>Label</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public Object caseLabel(Label object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>List Box</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>List Box</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public Object caseListBox(ListBox object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>List Item</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>List Item</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public Object caseListItem(ListItem object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Tool Bar</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>Tool Bar</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public Object caseToolBar(ToolBar object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Tool Bar Item</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>Tool Bar Item</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public Object caseToolBarItem(ToolBarItem object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Tool Bar Separator</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>Tool Bar Separator</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public Object caseToolBarSeparator(ToolBarSeparator object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Tool Bar Button</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>Tool Bar Button</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public Object caseToolBarButton(ToolBarButton object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch, but this is the last case anyway.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject)
	 * @generated
	 */
	public Object defaultCase(EObject object) {
		return null;
	}

} //Usixml_cuiSwitch
